using System;
using ns27;

namespace Triton.Game.Mapping
{
	[Attribute38("CollectionCardLock")]
	public class CollectionCardLock : MonoBehaviour
	{
		public GameObject m_allyBg => method_3<GameObject>("m_allyBg");

		public GameObject m_spellBg => method_3<GameObject>("m_spellBg");

		public GameObject m_weaponBg => method_3<GameObject>("m_weaponBg");

		public GameObject m_lockPlate => method_3<GameObject>("m_lockPlate");

		public UberText m_lockText => method_3<UberText>("m_lockText");

		public GameObject m_lockPlateBone => method_3<GameObject>("m_lockPlateBone");

		public GameObject m_weaponLockPlateBone => method_3<GameObject>("m_weaponLockPlateBone");

		public GameObject m_heroLockPlateBone => method_3<GameObject>("m_heroLockPlateBone");

		public CollectionCardLock(IntPtr address, string className)
			: base(address, className)
		{
		}

		public CollectionCardLock(IntPtr address)
			: this(address, "CollectionCardLock")
		{
		}

		public void Start()
		{
			method_8("Start");
		}

		public void UpdateLockVisual(EntityDef entityDef, CollectionCardVisual.LockType lockType, string reason)
		{
			method_8("UpdateLockVisual", entityDef, lockType, reason);
		}

		public void SetLockText(string text)
		{
			method_8("SetLockText", text);
		}

		public void Hide()
		{
			method_8("Hide");
		}
	}
}
